re-entrant - определение. Что такое re-entrant
Diclib.com
Словарь онлайн

Что (кто) такое re-entrant - определение

QUALITY OF SUBROUTINES AND COMPUTER PROGRAMS
Re-entrant code; Reentrant code; Reentrant function; Reentrant (subroutine); Reentrant (computing); Pure procedure; Sharable code (reentrancy); Reentrant program; Re-entrancy (computing)

re-entrant         
WIKIMEDIA DISAMBIGUATION PAGE
Re-entrant; Reentrancy; Reentrant (disambiguation); Reentrance; Re-entrancy
¦ adjective (of an angle) pointing inwards. The opposite of salient.
¦ noun
1. a re-entrant angle; an indentation.
2. a person who has re-entered something.
re-entrant         
WIKIMEDIA DISAMBIGUATION PAGE
Re-entrant; Reentrancy; Reentrant (disambiguation); Reentrance; Re-entrancy
<programming> Used to describe code which can have multiple simultaneous, interleaved, or nested invocations which will not interfere with each other. This is important for parallel processing, recursive functions or subroutines, and interrupt handling. It is usually easy to arrange for multiple invocations (e.g. calls to a subroutine) to share one copy of the code and any read-only data but, for the code to be re-entrant, each invocation must use its own copy of any modifiable data (or synchronised access to shared data). This is most often achieved using a stack and allocating local variables in a new stack frame for each invocation. Alternatively, the caller may pass in a pointer to a block of memory which that invocation can use (usually for outputting the result) or the code may allocate some memory on a heap, especially if the data must survive after the routine returns. Re-entrant code is often found in system software, such as operating systems and teleprocessing monitors. It is also a crucial component of multithreaded programs where the term "thread-safe" is often used instead of "re-entrant". (1996-12-21)
Reentrant         
WIKIMEDIA DISAMBIGUATION PAGE
Re-entrant; Reentrancy; Reentrant (disambiguation); Reentrance; Re-entrancy
·adj Reentering; pointing or directed inwardds; as, a re/ntrant angle.

Википедия

Reentrancy (computing)

In computing, a computer program or subroutine is called reentrant if multiple invocations can safely run concurrently on multiple processors, or on a single-processor system, where a reentrant procedure can be interrupted in the middle of its execution and then safely be called again ("re-entered") before its previous invocations complete execution. The interruption could be caused by an internal action such as a jump or call, or by an external action such as an interrupt or signal, unlike recursion, where new invocations can only be caused by internal call.

This definition originates from multiprogramming environments, where multiple processes may be active concurrently and where the flow of control could be interrupted by an interrupt and transferred to an interrupt service routine (ISR) or "handler" subroutine. Any subroutine used by the handler that could potentially have been executing when the interrupt was triggered should be reentrant. Similarly, code shared by two processors accessing shared data should be reentrant. Often, subroutines accessible via the operating system kernel are not reentrant. Hence, interrupt service routines are limited in the actions they can perform; for instance, they are usually restricted from accessing the file system and sometimes even from allocating memory.

This definition of reentrancy differs from that of thread-safety in multi-threaded environments. A reentrant subroutine can achieve thread-safety, but being reentrant alone might not be sufficient to be thread-safe in all situations. Conversely, thread-safe code does not necessarily have to be reentrant (see below for examples).

Other terms used for reentrant programs include "sharable code". Reentrant subroutines are sometimes marked in reference material as being "signal safe". Reentrant programs are often "pure procedures".